/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package accesoDatos.negocio.DAOS;

import accesoDatos.negocio.entity.Mercado;
import java.io.Serializable;
import javax.persistence.EntityManager;
import javax.persistence.Query;

/**
 *
 * @author ian
 */
public class MercadoDao implements Serializable {

     public String create(Mercado mercado, EntityManager emc) {
        emc.getTransaction().begin();
        try {
            mercado = emc.merge(mercado);
            emc.persist(mercado);
            emc.getTransaction().commit();
            return "Sucess";
        } catch (Exception e) {
            System.out.println(e);
            emc.getTransaction().rollback();
            return "Fail";
        }
    }


 public void update(String name, Mercado nuevo, EntityManager em){
        em.getTransaction().begin();
        try{
            Query q = em.createQuery("UPDATE Mercado s SET s.name = '" +
                    nuevo.getName() + "', s.nemo = '"+ nuevo.getNemo() +
                    "', s.descripcion = '"+ nuevo.getDescripcion() +
                    "' WHERE s.name= '" + name + "'");
            q.executeUpdate();
            em.getTransaction().commit();
        }catch(Exception e){
            System.out.println(e);
            em.getTransaction().rollback();
        }
    }
    public void delete(Mercado mercado, EntityManager em){
        this.delete(mercado, em);
    }

    public Mercado buscarNombre(String name, EntityManager em){
        try{
            Query q = em.createQuery("SELECT m FROM Mercado as m WHERE m.name = '" + name + "'");
            return (Mercado)q.getSingleResult();
        }catch(Exception e){
            System.out.println(e);
            return null;
        }
    }
    
}
